package com.piggy.logi.sys.domain;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import com.baomidou.mybatisplus.annotation.*;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;


/**
 * 价格方案管理对象 logi_price_plan
 *
 * @author piggy
 * @date 2023-08-14
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("logi_price_plan")
public class LogiPricePlan implements Serializable {

    private static final long serialVersionUID=1L;

    /** 主键 */
    @ApiModelProperty("主键")
    @TableId(value = "id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;

    /** 部门id */
    @ApiModelProperty("部门id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long deptId;

    /** 方案名称 */
    @ApiModelProperty("方案名称")
    private String planName;

    /** 项目id */
    @ApiModelProperty("项目id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long projectId;

    /** 方案名称 */
    @ApiModelProperty("项目合作线路id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long projectShiplineId;

    /** 运输类型 */
    @ApiModelProperty("运输类型")
    private String transportType;

    /** 计费模式 */
    @ApiModelProperty("计费模式")
    private String feeMode;

    /** 附加计费模式 */
    @ApiModelProperty("附加计费模式")
    private String addFeeMode;

    /** 附加计费模式1 */
    @ApiModelProperty("附加计费模式1")
    private String addFeeMode1;

    /** 线路id */
    @ApiModelProperty("线路id")
    private String lineId;

    /** 区域id */
    @ApiModelProperty("区域id")
    private String districtId;

    /** 轻泡系数 */
    @ApiModelProperty("轻泡系数")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Integer waterProof;

    /** 1 可用 0 不可用 */
    @ApiModelProperty("1 可用 0 不可用")
    private String status;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty("删除标志（0代表存在 2代表删除）")
    @TableLogic
    private String delFlag;

    /** 创建者 */
    @ApiModelProperty("创建者")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /** 创建时间 */
    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    @ApiModelProperty("更新者")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    /** 更新时间 */
    @ApiModelProperty("更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

}
